#pragma once

#include "Includes.h"
#include "Engine/RenderGlobals.h"
#include "IAInterface.h"

class CIAInterfaceDX10: public CIAInterfaceBase
{
private:
    std::vector< ID3D10Buffer* >   m_VertexBuffers;
    std::vector< mUInt >           m_Strides;
    std::vector< mUInt >           m_Offsets;//all 0 by default
    ID3D10Buffer                  *m_pIndexBuffer;
    DXGI_FORMAT                    m_IndexFormat;

public:
    CIAInterfaceDX10                      ( );
    ~CIAInterfaceDX10                     ( );
    virtual mUInt CreateVertexBuffer      ( mVoid *a_pBufData, mUInt a_uBufSize, mUInt a_uStride );
    virtual mBool CreateIndexBuffer       ( mVoid *a_pBufData, mUInt a_uBufSize, TVariableType a_IndexType );
    virtual mVoid IASetupBuffers          ( );
};